<?php
class CQuestion extends \BaseController {
	private $question;
	
	public function index() {
		$this->loadView("vHeader");
		$this->loadView("vIndex");
		$this->viewPlay(DAO::getOne("Domaine", 1));
		echo JsUtils::get("/trivia/CIndex/getMenu", "{}", "#menu-11");
	}
	
	public function newQuestion($idDomaine,$libelle){
		$joueur=$this->loadPlayer();
		if($joueur!=null){
			$this->question=new Question();
			$this->question->setIdDomaine($idDomaine);
			$this->question->setIdJoueur($joueur->getId());
			$this->question->setLibelle($libelle);
			$this->question->setValidation(false);
			if(DAO::insert($this->question)==1){
				echo 'La question a été ajoutée à la base de donnée, merci pour votre engagement envers notre application, elle sera validée d\'ici peu.';
			}else{
				echo 'Impossible d\'ajouter votre question à notre base de données, veuillez réesaayer ultérieurement.';
			}
		}else{
			echo 'Impossible de charger votre profil, reconnectez vous, si le problème persiste contactez l\'administrateur.';
		}	
	}

	private function loadPlayer(){
		$joueur=null;
		if (array_key_exists('joueur', $_SESSION)){
			$joueur=$_SESSION['joueur'];
		}
		var_dump($joueur);
		return $joueur;
	}
	
	private function loadQuestion($idQuestion){
		$this->question=DAO::getOne("Question", $idQuestion);
	}
	
	public function validateQuestion($idQuestion,$validate){
		$this->loadQuestion($idQuestion);
		$this->question->setValidation($validate);
		DAO::update($this->question);
	}
	
	public function modifyQuestion($idQuestion,$libelle){
		$this->loadQuestion($idQuestion);
		$this->question->setLibelle($libelle);
		DAO::update($this->question);
	}
	
	public function foundQuestion($domaine){
		$question=DAO::getOne("Question","iddomaine=".$domaine->getId()." ORDER BY RAND() LIMIT 1");
		if(!empty($question)){
			$this->question=$question;
		}		
	}
	
	public function loadQuestionAndAnswers($domaine){
		$this->foundQuestion($domaine);	
		$jeu=null;
		$jeu[0]=$this->question;
		$jeu[1]=CReponse::loadAnswers($this->question->getId());
		return $jeu;
	}
	
	public function viewPlay($domaine){
		$this->loadView("vQuestion",$this->loadQuestionAndAnswers($domaine));
		echo JsUtils::getAndBindTo(".answer", "click","/trivia/CQuestion/answerChoosen", "{}","#jQuery");
	}
	
	public function answerChoosen($id){
		$id=str_replace("answer","",$id[0]);
		if(CReponse::checkAnswer($id)){
			$domaine=CReponse::loadAnswer($id)->getQuestion()->getDomaine();
			CSerie::incScore($domaine);
			echo JsUtils::doSomethingOn("#answer".$id,"addClass","'vert'");
			echo JsUtils::doSomethingOn("#reponse","html","'Bonne réponse'");
		}else{
			echo JsUtils::doSomethingOn("#answer".CReponse::goodAnswer($id),"addClass","'vert'");
			echo JsUtils::doSomethingOn("#answer".$id,"addClass","'rouge'");
			echo JsUtils::doSomethingOn("#reponse","html","'Mauvaise réponse'");
		}
		
	}

}